#ifndef _GAMEPLAYLAYER_H_
#define _GAMEPLAYLAYER_H_

#include <SECore/Layer.h>
#include <SERender/Renderer/Renderer.h>


namespace SEngine
{
    class GamePlayLayer : public Layer
    {
    public:
        GamePlayLayer(CoreApplication & app, int argc, char ** argv) 
            : Layer(app), m_argc(argc), m_argv(argv) {}
        virtual ~GamePlayLayer() = default;

        void Attach() override;
        void Detach() override {}
        void BeginFrame() override {}
        void EndFrame() override {}
        void Update(int delta) override;
        void OnEvent(EventPtr) override {}
    private:
        int m_argc;
        char ** m_argv;
        std::unique_ptr<Renderer> m_renderer;

    };
} // namespace SEngine


#endif